Over the years there has been increasing use of computer systems generally and growth in use of embedded systems. Embedded systems include systems that may be difficult to troubleshoot, including systems that are unreachable, such as implanted medical devices or remotely controlled devices. Many types of embedded systems use monitoring systems to monitor system elements. Monitoring systems may be relatively complex to design, build, and maintain and may be relatively resource-intensive, especially for real-time or embedded systems. Additionally, some monitoring systems are relatively inflexible. For example, such a monitoring system may monitor a limited numbers of events, may have limited response capabilities to detected events available, and may be difficult to reconfigure.